﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Telerik.Web.UI;
using System.Configuration;

public partial class Test1UserControl : System.Web.UI.UserControl
{
    protected void Page_Load(object sender, EventArgs e)
    {
        SetDataSourceConnection();
        SetMenuItem();
    }

    private void SetDataSourceConnection()
    {
        string connectionName = string.Format("ConnectionString{0}", Request.QueryString["year"].ToString().Replace("/", ""));
        ResultTestSqlDataSource.ConnectionString = ConfigurationManager.ConnectionStrings[connectionName].ConnectionString;
    }

    private void SetMenuItem()
    {
        GridFilterMenu menu = ResultTestRadGrid.FilterMenu;
        foreach (RadMenuItem item in menu.Items)
        {
            switch (item.Text)
            {
                case "StartsWith":
                    item.Text = "شروع با";
                    break;
                case "NoFilter":
                    item.Text = "بدون فیلتر";
                    break;
                case "Contains":
                    item.Text = "شامل";
                    break;
                case "DoesNotContain":
                    item.Text = "غیر شامل";
                    break;
                case "EndsWith":
                    item.Text = "پایان با";
                    break;
                case "EqualTo":
                    item.Text = "مساوی با";
                    break;
                case "NotEqualTo":
                    item.Text = "نامساوی با";
                    break;
                case "GreaterThan":
                    item.Text = "بزرگتر از";
                    break;
                case "LessThan":
                    item.Text = "کوچکتر از";
                    break;
                case "GreaterThanOrEqualTo":
                    item.Text = "بزرگتر یا مساوی با";
                    break;
                case "LessThanOrEqualTo":
                    item.Text = "کوچکتر یا مساوی با";
                    break;
                case "Between":
                    item.Text = "بین";
                    break;
                case "NotBetween":
                    item.Text = "غیر بین";
                    break;
                case "IsEmpty":
                    item.Text = "خالی";
                    break;
                case "NotIsEmpty":
                    item.Text = "غیر خالی";
                    break;
                case "IsNull":
                    item.Text = "تهی";
                    break;
                case "NotIsNull":
                    item.Text = "غیر تهی";
                    break;
                case "Custom":
                    item.Text = "خاص";
                    break;
                default:
                    break;
            }
        }
    }

    protected void PostBackClick(object sender, EventArgs e)
    {
        try
        {
            foreach (GridDataItem item in ResultTestRadGrid.Items)
            {
                if (((CheckBox)item["isOk"].Controls[1]).Checked)
                {
                    ResultTestSqlDataSource.UpdateParameters["OkNezamCode"].DefaultValue = Request.QueryString["username"].ToString();
                    ResultTestSqlDataSource.UpdateParameters["codetest"].DefaultValue = item.GetDataKeyValue("codetest").ToString();
                    ResultTestSqlDataSource.UpdateParameters["uniqcode"].DefaultValue = item.GetDataKeyValue("Uniqcode").ToString();
                    ResultTestSqlDataSource.UpdateParameters["result"].DefaultValue = item.GetDataKeyValue("result").ToString();
                    ResultTestSqlDataSource.Update();
                }
            }
            ResultTestRadGrid.Rebind();
        }
        catch (Exception exception)
        {
            Session["CurrentError"] = "اتصال بانک داده را بررسی کنید. در صورت عدم رفع مشکل با مدیر سیست تماس بگیرید";
            Server.Transfer("FatalError.aspx");
        }
    }
}